package com.ly.system.system.bean.entity;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.List;

/**
 * 字典
 *
 * @author luoyun
 * @Date: 2025-06-12
 */
@Data
@Accessors(chain = true)
@TableName("sys_dict")
@Schema(description = "字典")
public class SysDict implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(type = IdType.ASSIGN_ID)
    @ExcelProperty("id")
    @Schema(description = "id")
    private java.lang.String id;
    /**
     * 字典名称
     */
    @ExcelProperty("字典名称")
    @Schema(description = "字典名称")
    private java.lang.String dictName;
    /**
     * 字典编码
     */
    @ExcelProperty("字典编码")
    @Schema(description = "字典编码")
    private java.lang.String dictCode;
    /**
     * 描述
     */
    @ExcelProperty("描述")
    @Schema(description = "描述")
    private java.lang.String description;
    /**
     * 删除状态
     */
    @ExcelProperty("删除状态")
    @Schema(description = "删除状态")
    // @TableLogic
    private java.lang.Integer delFlag;
    /**
     * 创建人
     */
    @ExcelProperty("创建人")
    @Schema(description = "创建人")
    private java.lang.String createBy;
    /**
     * 创建时间
     */
    @ExcelProperty("创建时间")
    @Schema(description = "创建时间")
    private java.util.Date createTime;
    /**
     * 更新人
     */
    @ExcelProperty("更新人")
    @Schema(description = "更新人")
    private java.lang.String updateBy;
    /**
     * 更新时间
     */
    @ExcelProperty("更新时间")
    @Schema(description = "更新时间")
    private java.util.Date updateTime;
    /**
     * 字典类型0为string,1为number
     */
    @ExcelProperty("字典类型0为string,1为number")
    @Schema(description = "字典类型0为string,1为number")
    private java.lang.Integer type;
    /**
     * 租户ID
     */
    @ExcelProperty("租户ID")
    @Schema(description = "租户ID")
    private java.lang.Integer tenantId;
    /**
     * 低代码应用ID
     */
    @ExcelProperty("低代码应用ID")
    @Schema(description = "低代码应用ID")
    private java.lang.String lowAppId;

    /**
     * 字典项目
     */
    @TableField(exist = false)
    private List<SysDictItem> items;

    /**
     * 关键字
     */
    @TableField(exist = false)
    private java.lang.String keywords;
}
